import { defineStore } from "pinia";

type VO_FORM = {
  contAmount: number; // 采购数量
  contDesc: string; // 商品描述
  contModel: string; // 商品型号
  contUnit: string; // 单位
  currencyCode: string; // 币种
  maxValue: number; // 价格最大
  minValue: number; // 价格最小
  opporContType: string; // 商品种类
  opporContCateName: string; // 商品种类汉字，用于确认时进行展示，不传给后端
  opporContLoct: string[]; // 商品产地  处理成  省-市  例如  山西省-大同市
  opporContLoctName: string; // 商品产地汉字，用于确认时进行展示，不传给后端
  opporContName: string; // 商品名称
  opporContSts: string; // 是否现货  '1'-是 '0'-否 是字符串类型的0、1
  portraitList?: any[]; // 并购画像
  currencyOtherVal?: string; // 自定义币种
  indicatorDesc?: string; //并购需求画像描述
  supplConte?: string; // 交易目的其他
};

type IndicatorVO = {
  indicatorName: string; // 指标名称
  maxValue: string; // 范围最大值
  minValue: string; // 范围最小值
  opporNo?: string; // 商机编号
  pk?: string; // 指标 id
};

type PublicForm = {
  businessOpportunityAttachVOList?: any[]; // 附件VO
  businessOpportunityFileVOList?: any[];
  businessOpportunityContentVO: VO_FORM; // 商机信息VO
  businessOpportunityIndicatorVOList?: IndicatorVO[]; // 并购画像列表
  pubVadDays: number; // 发布有效期
  approverNo: string; // 审批人编号
  opporType: string; // 商机类型
  entpRole: string; // 企业角色
  entpName: string; // 企业名称
  entpNo: string; // 企业编号
  entpType?: string; // 企业类型
  entpUssc?: string; //企业统一社会信用代码
  entpLoct?: string; // 企业所在省市
  entpAddr?: string; // 企业所在地
  opporTopicType: string; // 商机主题
  fileId: any[]; // 附件
  attatcTypes: any[]; // 附件类型
};
interface STATE {
  publicForm: PublicForm;
  businessList: any[]; // 企业列表
  businessTypeList: any[]; // 商机类型
  businessRoleList: any[]; // 企业角色
  businessStatusList: any[]; // 商机状态
  isStockRadio: any[]; // 是否现货
  goodsClassList: any[]; // 商品种类
  goodsOriginList: any[]; // 商品产地
  currencyList: any[]; // 币种
  companyTypeList: any[]; // 企业类型
  opporTopicList: any[]; // 商机主题
}

export const useBusinessPub = defineStore("businessPub", {
  state: (): STATE => ({
    publicForm: {
      businessOpportunityAttachVOList: [],
      businessOpportunityFileVOList: [],
      businessOpportunityIndicatorVOList: [],
      businessOpportunityContentVO: {
        contAmount: 0,
        contDesc: "",
        contModel: "",
        contUnit: "",
        currencyCode: "",
        maxValue: 0,
        minValue: 0,
        opporContType: "",
        opporContCateName: "",
        opporContLoct: [],
        opporContLoctName: "",
        opporContName: "",
        opporContSts: "1",
        portraitList: [], // 并购画像
      },
      pubVadDays: 0,
      approverNo: "",
      opporType: "01",
      entpRole: "01",
      entpName: "",
      entpNo: "",
      opporTopicType: "",
      fileId: [],
      attatcTypes: [],
    },
    businessList: [],
    businessTypeList: [],
    businessRoleList: [],
    businessStatusList: [],
    isStockRadio: [],
    goodsClassList: [],
    goodsOriginList: [],
    currencyList: [],
    companyTypeList: [],
    opporTopicList: [],
  }),
  getters: {},
  actions: {},
});

